草庐IT

Android TabHost 已弃用

全部标签

android - 如何摆脱代码弃用?

我正在AndroidStudio中开发一个支持版本8到19的Android项目。我想使用此方法getBlockSizeLong()。现在,如果我使用getBlockSize(),我会看到已弃用的取消行,如您在附图中所见。如果我使用getBlockSizeLong(),我会收到错误消息,指出此方法不能用于版本8!即使我使用版本检查,取消行仍然存在。那是丑陋的编码。我现在应该怎么处理? 最佳答案 好吧,您可以通过多种方式来处理这个问题。为了删除已弃用方法的“删除线”,您可以使用注释@SuppressWarnings("deprecati

android - 我可以在 android studio 中使用已弃用的方法和类吗

我阅读了Android文档,并且在其中找到了已弃用的方法和类。我可以在androidstudio中使用已弃用的方法和类吗?我可以像其他未弃用的方法和类一样使用它们吗? 最佳答案 是的,只要框架中存在已弃用的方法,您就可以使用已弃用的方法。通过弃用一种方法,平台开发人员试图告诉您该方法有问题,或者已经有更好的方法来完成任务。弃用方法就像警告开发人员不要使用该方法,因为弃用的方法很可能会在未来的版本中被删除,并且当您的用户更新时,使用该方法的应用程序可能不再工作平台到最新版本。 关于andr

android - AsyncTask 现在是否已通过 AsyncTaskLoader 弃用?

因为AsyncTaskLoader可以做AsyncTask可以做的一切,而且还具有内置的最佳实践功能,例如线程复制和过早死亡预防。有什么理由再使用AsyncTask了吗?或者我应该到处盲目地使用AsyncTaskLoader 最佳答案 当你有一个后台作业需要完成时,无论Activity是否被销毁:Service或IntentService一些后台作业机制。当您有需要完成的后台作业并再次通知UI时:使用AsyncTaskLoader。当你有一个后台作业需要完成并再次通知用户并继续运行,尽管Activity被销毁:使用AsyncTask

android - FragmentActivity.getSupportMediaController() 已弃用

为了获取MediaControllerCompat实例,我在FragmentActivity中使用了getSupportMediaController()。但这种方法已被弃用。我必须使用哪种方法来代替这种方法? 最佳答案 如果您仍然想要一个MediaControllerCompat实例,则有一种方法可以获得它,因为getMediaController()不会返回此类的兼容版本:MediaControllerCompat.getMediaController(activity)我在支持库更新日志的修订版26.0.0Beta1中找到了此

android - FusedLocationProviderApi.KEY_LOCATION_CHANGED 已弃用。现在要做什么?

我有一个LocationReceiver,它使用FusedLocationProviderApi.KEY_LOCATION_CHANGED从Intent中提取一个Location。但是现在KEY_LOCATION_CHANGED已弃用,我应该将其更改为什么?当前代码:@OverridepublicvoidonReceive(Contextcontext,Intentintent){finalLocationlocation=(Location)intent.getExtras().get(FusedLocationProviderApi.KEY_LOCATION_CHANGED);if

android - Android N 弃用安全 "Crypto"提供程序

一位用户在AndroidN中运行我的应用程序,他遇到了崩溃。我知道谷歌在AndroidN中弃用了Cryptoprovider,但是迁移旧的加密数据的最佳方法是什么。 最佳答案 8.0以上可以引用here对于8.0以下的版本,您可以通过以下代码。您可以使用此提供程序替换SecureRandom的“Crypto”,它对我来说很好用:使用,SecureRandomsr=SecureRandom.getInstance("SHA1PRNG",newCryptoProvider());而不是,SecureRandomsr=SecureRand

android - SmsMessage.createFromPdu 在 android API 级别 23 中被弃用

我正在尝试使用以下代码读取收到的短信,它在API级别23以下工作,但在API级别23中,createFromPdu方法已弃用。在谷歌文档中它有一个alternatemethod但我该如何使用它。publicclassIncomingSmsextendsBroadcastReceiver{//GettheobjectofSmsManagerfinalSmsManagersms=SmsManager.getDefault();publicvoidonReceive(Contextcontext,Intentintent){//Retrievesamapofextendeddatafromt

android - AlertDialog setButton 已弃用

我在我的EclipseAndroid项目中使用这段代码alertDialog.setButton("OK",newDialogInterface.OnClickListener(){@OverridepublicvoidonClick(DialogInterfacedialog,intwhich){}});但是Eclipse说:ThismethodwasdeprecatedinAPIlevel3.UsesetButton(int,CharSequence,android.content.DialogInterface.OnClickListener)withBUTTON_POSITIV

Android WebView PictureListener 已弃用 - 仍然别无选择?

这与过去提出的其他问题类似,但有新的变化。WebView的capturePicture()完成的通知是onNewPicture,但是最新的文档说这里面返回的图片永远是nullfromAPI18及更高版本(Android4.3)。WebView.PictureListener到目前为止,我已经检查它在Android4.0.3上仍然有效(并且尝试使用捕获的图像失败,除非我等待通知)。我们应该用什么来代替?图片是在onPageFinished时立即返回,还是在WebChromeClient进度通知100%时返回?更新API-18(Android4.3)几天前出现在SDK上。onNewPict

android - 支持被新方法取代的已弃用方法的最佳方法是什么?

我喜欢在android.webkit.WebView中使用findAll/findAllAsync方法。findAll已被弃用,Google建议使用findAllAsync,它需要JellyBean或更高版本。但是,我喜欢我的应用程序支持2.2+。我尝试了以下操作,但收到findAll警告(弃用)和findAllAysnc错误(需要增加最低SDK版本):if(Build.VERSION.SDK_INT处理此问题的最佳方法是什么?我应该只使用findAll并忽略弃用警告吗? 最佳答案 我相信答案有几个方面:您在list中将最低SDK版